// import com.alibaba.druid.sql.ast.SQLObject_ptr ;
// import com.alibaba.druid.sql.ast.expr.SQLIdentifierExpr;
// import com.alibaba.druid.sql.ast.statement.SQLAlterTableItem;
// import com.alibaba.druid.sql.dialect.mysql.ast.MySqlObjectImpl;
// import com.alibaba.druid.sql.dialect.mysql.visitor.MySqlASTVisitor*;
#pragma once
#include <string>
#include "../../../../../sql/dialect/mysql/ast/MySqlObjectImpl.h"
#include "../../../../../sql/ast/statement/SQLAlterTableItem.h"

class SQLObject;
class MySqlASTVisitor;

class MySqlAlterTableOption :public MySqlObjectImpl ,virtual public SQLAlterTableItem {
  public:
    string_ptr  name;
    SQLObject_ptr  value;

    MySqlAlterTableOption(string_ptr  name, string_ptr  value) ;

    MySqlAlterTableOption(string_ptr  name, SQLObject_ptr  value) ;

    MySqlAlterTableOption() ;
  SHAREDOBJECT(MySqlAlterTableOption);

    // @Override
    void accept0(MySqlASTVisitor_ptr visitor) ;

    string_ptr  getName() ;

    void setName(string_ptr  name) ;

    SQLObject_ptr  getValue() ;

    void setValue(SQLObject_ptr  value) ;
};
